A Two-phase Practical Parallel Algorithm for Construction of Huffman Codes
نویسندگان
چکیده
The construction of optimal prefix codes plays a significant and influential role in applications concerning information processing and communication. For decades, different algorithms were proposed treating the issue of Huffman codes construction and various optimizations were introduced. In this paper we propose a detailed practical time-efficient parallel algorithm for generating Huffman codes on CREW PRAM model exploiting n processors, where n is equal to the number of symbols in alphabet. We first compute the codewords lengths for all symbols concurrently with an innovative direct parallelization of the Huffman tree construction algorithm, alleviating the complexity of dealing with the original tree-like data structure. Then Huffman codes corresponding to symbols are generated in parallel based on a recursive formula introduced in [5]. The proposed algorithm achieves an O(n) time in the worst case when one-sided Huffman tree is formed, which is rarely encountered in practice, and O(log((logn – 1)!)) time in the best case when Huffman tree is nearly balanced.
منابع مشابه
Approximating Huffman Codes in Parallel
In this paper we present some new results on the approximate parallel construction of Huuman codes. Our algorithm achieves linear work and logarithmic time, provided that the initial set of elements is sorted. This is the rst parallel algorithm for that problem with the optimal time and work. Combining our approach with the best known parallel sorting algorithms we can construct an almost optim...
متن کاملAN EFFICIENT OPTIMIZATION PROCEDURE BASED ON CUCKOO SEARCH ALGORITHM FOR PRACTICAL DESIGN OF STEEL STRUCTURES
Different kinds of meta-heuristic algorithms have been recently utilized to overcome the complex nature of optimum design of structures. In this paper, an integrated optimization procedure with the objective of minimizing the self-weight of real size structures is simply performed interfacing SAP2000 and MATLAB® softwares in the form of parallel computing. The meta-heuristic algorithm chosen he...
متن کاملطراحی و آموزش شبکه های عصبی مصنوعی به وسیله استراتژی تکاملی با جمعیت های موازی
Application of artificial neural networks (ANN) in areas such as classification of images and audio signals shows the ability of this artificial intelligence technique for solving practical problems. Construction and training of ANNs is usually a time-consuming and hard process. A suitable neural model must be able to learn the training data and also have the generalization ability. In this pap...
متن کاملUsing an innovative coding algorithm for data encryption∗
This paper discusses the problem of using data compression for encryption. We first propose an algorithm for breaking a prefix-coded file by enumeration. Based on the algorithm, we respectively analyze the complexity of breaking Huffman codes and Shannon-Fano-Elias codes under the assumption that the cryptanalyst knows the code construction rule and the probability mass function of the source. ...
متن کاملParallel Huffman Decoding
A simple parallel algorithm for decoding a Huuman encoded le is presented , exploiting the tendency of Huuman codes to resynchronize quickly in most cases. An extention to JPEG decoding is mentioned.
متن کامل